Windows

Praktisches kleines Windows-Tool: Fenster immer im Vordergrund

El Tutos Window Profiles: "Fenster immer oben" - was für ein kleines und doch nützliches Feature :)

Drei kleine Tools für Windows-Nutzer: Ein simples Always-on-top-Skript, eine erweiterte Variante, die Fenster auch platzieren, skalieren und transparent machen kann - und noch eine Dritte, die das alles auch noch in Profilen speichert. Könnte für jeden nützlich sein!

Es gibt viele Gründe, ein Fenster immer im Vordergrund zu halten. Bei mir sind vor allem Terminal-Fenster, die ich auch noch sehen will, wenn zum Beispiel ein Browser im Vollbild geöffnet ist. Und ebenso Fenster mit Video-Playern. Egal, ob man sich ein Video mit einer Anleitung anguckt und sie gleichzeitig umsetzen will. Oder während banaler Arbeiten noch genügend Hirnkapazität da ist, um gleichzeitig einen Film zu gucken. Videos gehören in den Vordergrund, sonst könnte man es auch lassen.

Bevor ich mit den Code-Schnipseln anfange: Am Ende des Artikels gibt es Downloads mit fertig kompilierten Dateien - also gebrauchsfertigen EXE-Dateien. Zudem haben wir eine AutoHotkey-Einführung und etliche weitere Artikel zum Thema.

Ich nutze für Always-on-top ein schlichtes Kürzel, das in meinem AutoHotkey-Kürzel-Skript neben Dutzenden anderen Platz findet:

^#t::
WinSet, AlwaysOnTop, Toggle, A 
return

Strg+Win+t schaltet damit schlicht die Eigenschaft Immer-im-Vordergrund ein und aus. Mehr braucht eigentlich kein Mensch. Wobei ...

Version 1: An/Aus

Nun, manchmal ist das so eine Sache mit den Kürzeln - sie geraten in Vergessenheit. Also wollte ich Euch eine etwas andere Variante an die Hand geben, die über Strg+Rechtsklick auf ein Fenster funktioniert, was dann so aussieht:

el tutos window profiles mini.
Minimal: Strg+Rechtsklick - einfach, nützlich, reicht

Und mehr kann das Skript auch nicht - es schaltet den Vordergrundmodus ein und aus. Der Code ist fix erledigt:

#NoEnv
#SingleInstance Force
SetTitleMatchMode, 2
CoordMode, Mouse, Screen

; Create context menu
Menu, WinTopMenu, Add, Toggle Always On Top, ToggleTop

; Show menu on right click
^RButton::
    MouseGetPos, mx, my, winID
    if (winID)
    {
        ; Store window ID globally
        Global TargetWin := winID

        ; Check current state
        WinGet, ExStyle, ExStyle, ahk_id %winID%
        if (ExStyle & 0x8)  ; WS_EX_TOPMOST
            Menu, WinTopMenu, Check, Toggle Always On Top
        else
            Menu, WinTopMenu, Uncheck, Toggle Always On Top

        Menu, WinTopMenu, Show
    }
return

ToggleTop:
    if (TargetWin)
    {
        WinGet, ExStyle, ExStyle, ahk_id %TargetWin%
        if (ExStyle & 0x8)
            WinSet, AlwaysOnTop, Off, ahk_id %TargetWin%
        else
            WinSet, AlwaysOnTop, On, ahk_id %TargetWin%
    }
return

Das ist alles. Es wird ein Kontextmenü beschrieben (Menu ...), dann wird das Kürzel definiert, hier der Strg + rechten Maus-Button (^RButton ...) und am Ende wird die eigentliche Funktion (ToggleTop ...) definiert.

Auch das reicht wieder. Wobei ...

Variante 2: Mehr Fenster-Eigenschaften

Nun, wenn schon ein Menü geöffnet wird, das eine Fenster-Eigenschaft setzt - warum dann nicht noch mehr Eigenschaften? Und warum nicht mit Maus und Tastenkürzel möglich? Schadet doch nicht ...

el tutos window profiles medium.
Medium: Strg+Rechtsklick - jetzt mit mehr Eigenschaften

Der nächste Quellcode ist jetzt schon deutlich umfangreicher - die 537 Zeilen erspare ich Euch hier - aber hier ist die Textdatei.

Was das Tool kann:

  • Always-on-top per Tastenkürzel (Strg+Win+t) oder Menü (Rechtsklick)
  • Transparenz setzen (10, 50, 80, 100 Prozent)
  • Größe setzen (480p, 720p, 1280p)
  • Fenster platzieren (obere/untere rechte/linke Ecke)

Besonders nützlich ist hier die Transparenz, gerne auch in Kombination mit dem Vordergrundmodus - zum Beispiel für Wetterapps, Newsticker, Mediasteuerungen. Hier mal im Bild:

Das reicht nun nicht nur, das ist eigentlich schon mehr als man braucht. Wobei ...

Variante 3: Profile

Die finale Version, versprochen. Mittlerweile sind es 704 Zeilen Code, abermals soll daher die Textdatei genügen. Eigentlich ist auch nur eine Funktion hinzugekommen - Profile:

  • Fenster zu neuem Profil hinzufügen
  • Fenster in bestehendem Profil aktualisieren
  • Fenster in bestehendem Profil löschen
  • Profil laden/löschen
el tutos window profiles full.
Full: Strg+Rechtsklick - Eigenschaften plus Profile

Beim Aktualisieren werden Fenster, die noch nicht im Profil sind, hinzugefügt. So könnt Ihr nun Profile für Fenster-Layouts auf dem Desktop erstellen - auch über mehrere Monitore hinweg.

Übrigens, es gibt auch ein zugehöriges Tray-Icon:

tray icon vom profiler.
Das zugehörige Tray-Icon

Nun reicht's aber wirklich. Wobei ...

Mehr?

Das ganze Konstrukt ist kein ausgewachsener Fenster-Layout-Profile-Manager. Beispielsweise lassen sich nur bestehende Fenster ansprechen - das Laden eines Profils erstellt keine Fenster! Das ist nämlich gar nicht so einfach, sobald Fenster nach ihren wechselnden Inhalten benannt werden, wie Browser- oder Editor-Instanzen.

Es ist in der jetzigen Form nur ein kleines Helferlein, um mir ein paar Arbeitsschritte abzunehmen, die täglich mehrmals vorkommen.

Es gibt auch etliche andere Wege, Ähnliches zu erreichen - von anderen Fenster-Tools bis hin zu virtuellen Desktops.

Downloads

So hier die Downloads, jeweils ein ZIP mit dem AHK-Skript sowie einer ausführbaren EXE, für die Ihr kein AutoHotkey installieren müsst. Kleiner Disclaimer: Die Tools sollten auf Windows 11 recht problemlos funktionieren, aber es sind primär Basteleien, die Ihr als Anregung nutzen könnt - keine Garantie, dass alles funzt!

  • El Tutos Window Profiles - Minimal
    • Always-on-top via Rechtsklick
  • El Tutos Window Profiles - Medium
    • Minimal + Transparenz, Größe, Position
  • El Tutos Window Profiles - Full
    • Medium + Profile

Meine Empfehlung: Installiert AutoHotkey, verwendet die Skript und bettet sie gegebenenfalls in größere Projekte ein - zum Beispiel in El Tutos Profilmanager für Maus-/Tastaturkommandos.

Wenn Ihr irgendwas hiervon nützlich findet, es selbst erweitert oder andere Lösungen nutzt, lasst es uns wissen!

Artikel zu weiteren Tuto-Basteleien.

Mirco Lang

Freier Journalist, Exil-Sauerländer, (ziemlich alter) Skateboarder, Dipl.-Inf.-Wirt, Einzelhandelskaufmann, Open-Source-Nerd, Checkmk-Handbuchschreiber. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. Computer-Erstkontakt: ca. 1982 - der C64 des großen Bruders eines Freunds. Wenn Ihr hier mehr über Open Source, Linux und Bastelkram lesen und Tutonaut unterstützen möchtet: Über Kaffeesponsoring via Paypal.freue ich mich immer. Schon mal im Voraus: Danke! Nicht verpassen: cli.help und VoltAmpereWatt.de. Neu: Mastodon

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Schaltfläche "Zurück zum Anfang"